.v-row {
  display: flex;
  flex-direction: row;
}

.v-col {
  display: flex;
  flex-direction: column;
}

.v-flex-1 {
  flex: 1;
  min-width: 0;
  min-height: 0;
}

.v-center {
  align-items: center;
}

.v-row-align-center {
  align-items: center;
}

.v-row-center {
  justify-content: center;
}

.v-cursor-pointer {
  cursor: pointer;
}

.v-font-12 {
  font-size: 12px;
}

.v-font-14 {
  font-size: 14px;
}

.v-font-16 {
  font-size: 16px;
}

.v-font-18 {
  font-size: 18px;
}

.v-color-33 {
  color: #333 !important;
}

.v-color-gray-lighter {
  color: #9a9a9a !important;
}

.v-color-gray {
  color: #797979 !important;
}

.v-color-gray-darker {
  color: #585858 !important;
}

.v-color-blue {
  color: #5d87f0 !important;
}

.v-color-yellow {
  color: #d89d10 !important;
}

.v-color-green {
  color: #67c23a !important;
}

.v-color-red {
  color: #ff4949 !important;
}

.v-bg-blue {
  background-color: #5d87f0 !important;
}

.v-bg-yellow {
  background-color: #d89d10 !important;
}

.v-bg-green {
  background-color: #67c23a !important;
}

.v-bg-red {
  background-color: #ff4949 !important;
}
.v-bg-gray {
  background-color: #797979 !important;
}

.v-font-bold {
  font-weight: bold;
}

.v-mt-5 {
  margin-top: 5px;
}

.v-mt-10 {
  margin-top: 10px !important;
}

.v-mt-15 {
  margin-top: 15px !important;
}

.v-mt-20 {
  margin-top: 20px !important;
}

.v-mr-5 {
  margin-right: 5px!important;
}

.v-mr-10 {
  margin-right: 10px!important;
}

.v-mr-15 {
  margin-right: 15px!important;
}

.v-mr-20 {
  margin-right: 20px!important;
}

.v-mb-5 {
  margin-bottom: 5px !important;
}

.v-mb-10 {
  margin-bottom: 10px;
}

.v-mb-15 {
  margin-bottom: 15px;
}

.v-mb-20 {
  margin-bottom: 20px;
}

.v-ml-0 {
  margin-left: 0 !important;
}

.v-ml-5 {
  margin-left: 5px !important;
}

.v-ml-10 {
  margin-left: 10px !important;
}

.v-ml-15 {
  margin-left: 15px;
}

.v-ml-20 {
  margin-left: 20px;
}

.v-color-gray-lighter {
  color: #9a9a9a !important;
}

.v-color-gray {
  color: #797979 !important;
}

.v-color-gray-darker {
  color: #585858 !important;
}

.v-color-blue {
  color: #5d87f0 !important;
}

.v-color-red {
  color: #ff4949 !important;
}

.v-font-bold {
  font-weight: bold;
}

.v-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.v-ellipsis-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-line-clamp: 2;
}

.v-ellipsis-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-line-clamp: 3;
}

.v-ellipsis-4 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-line-clamp: 4;
}

.v-align-left {
  text-align: left;
}

.v-align-center {
  text-align: center;
}

.v-align-right {
  text-align: right;
}

.v-container {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.v-header {
  padding-bottom: 10px;
}

.v-between {
  justify-content: space-between;
}

.v-content {
  margin-right: -10px;
  padding: 0 10px 0 0;
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.v-form-tips {
  line-height: 14px;
  font-size: 12px;
  color: #999;
  margin-top: 5px;
}

.v-tips {
  background: #ecf8ff;
  border-left: 5px solid #50bfff;
  padding: 8px 16px;
  border-radius: 4px;
  margin: 5px 0;
  font-size: 12px;
  color: #666;
}

.v-search {
  display: flex;
  align-items: center;
}

.v-search-item {
  margin-right: 5px;
  flex-shrink: 0;
}

.v-total {
  font-size: 12px;
  color: #797979;
  margin-right: 10px;
}

.v-page-current {
  margin: 0 10px;
  font-size: 12px;
  color: #999;
  letter-spacing: 1px;
}

.v-width-auto {
  min-width: initial !important;
  width: auto;
}

.v-page-header {
  margin: -20px -20px 10px -20px;
  padding: 10px 20px;
  border-bottom: 1px solid #e9e9e9;
  font-weight: bold;
  flex-shrink: 0;
}

.v-shrink-0 {
  flex-shrink: 0;
}

.v-square {
  border-radius: 0 !important;
}

.v-round {
  border-radius: 100%;
}

.v-table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;

  &.bordered {
    th,
    td {
      border: 1px solid #e9e9e9;
    }
  }

  &.center {
    th,
    td {
      text-align: center;
    }
  }

  thead tr {
    background: #f3f3f3;
  }

  td,
  td {
    padding: 5px;
  }
}

.v-disabled {
  background-color: #f5f7fa !important;
  border-color: #e4e7ed !important;
  color: #c0c4cc !important;
  cursor: not-allowed !important;
}
